
    <!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <!--渲染器-->
    <meta name="renderer" content="webkit">
    <!--优先使用最新版本的IE 和 Chrome 内核-->
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <!-- 告诉浏览器该页面是自适应布局 -->
    <meta content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" name="viewport">

    <!-- css js -->
    {include file="database/database" /}

    <!-- css js -->
    </head>

    <body>
        <!--内容开始-->
<section class="content">
    
      <!--顶部提示开始-->
    {notempty name="page_tips_top"}
    <div class="alert alert-{$tips_type} alert-dismissable">
        <button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
        <p>{$page_tips_top|raw}</p>
    </div> 
    {/notempty}
    <!--顶部提示结束-->
    <!--bootstrap table begin-->
    <div class="container-div">
        <div class="row">
            {if $search OR $page_tips_search }
         
            {/if}{$top_button.href|default=''}
            <div class="col-sm-12 select-table table-striped"> 
                <div class="btn-group-sm" id="toolbar" role="group">
                {volist name="top_buttons" id="top_button"}
                <a class="{$top_button.class|default=''}" {notempty name="top_button.href"}href="{$top_button.href|default=''}"{/notempty}{notempty name="top_button.target"} target="{$top_button.target|default=''}"{/notempty}{notempty name="top_button.onclick"} onclick="{$top_button.onclick|default=''}"{/notempty}>
                    <i class="{$top_button.icon|default=''}"></i> {$top_button.title|default=''}
                </a>
                {/volist}
            </div>    
               <table id="bootstrap-table" data-mobile-responsive="true"></table>
            </div>
            </div>
        </div>
    <script>
        $(function() {

           var options = {
                uniqueId      : "{$unique_id}",         // 表格主键名称，（默认为id，如表主键不为id必须设置主键）
                url           : "{$data_url|raw}",      // 请求后台的URL
                addUrl        : "{$add_url|raw}",       // 新增的地址
                editUrl       : "{$edit_url|raw}",      // 修改的地址
                delUrl        : "{$del_url|raw}",       // 删除的地址
                exportUrl     : "{$export_url|raw}",    // 导出的地址
                sortUrl       : "{$sort_url|raw}",      // 排序的地址
                sortName      : "{$unique_id}",         // 排序列名称
                sortOrder     : "desc",                 // 排序方式  asc 或者 desc
                pagination    : {$pagination},          // 是否进行分页
                parentIdField : "{$parent_id_field}",   // 列表树模式需传递父id
                clickToSelect : true,                   // 默认false不响应，设为true则当点击此行的某处时，会自动选中此行的checkbox/radiobox
                pageSize      : "{$page_size}",         // 每页显示的行数
                 columns: [
                    {
                        field: 'state',
                        checkbox: true,
                        // 当某行包含checkbox_disabled时禁止选择
                        formatter: function(value, row, index) {
                            if(row.checkbox_disabled =='1'){
                                 return {
                                     disabled : true
                                }
                             }
                        }
                    },
                    {volist name="columns" id="column"}
                        {
                            field: '{$column.name|default=''}',  {// 字段}
                            title: '{$column.title|default=''}', {// 字段标题}
                            
                            {if $column.name==$unique_id}
                                sortable: true,                  {// 主键必须可以排序}
                            {else}
                            sortable: {$column.sortable},        {// 是否可排序}
                            {/if}
                            {notempty name="column.class"}
                            class: '{$column.class|default=''}', {// 使用class定义/覆盖列的CSS类}
                            {/notempty}
                            
                            {if $column.param }
                                {if $column.name == 'status' }
                                    formatter: function(value, row, index) {
                                        if (value == 0) {
                                            return '<i class="fa fa-toggle-off text-info fa-2x cursor_pointer" onclick="$.operate.state(\'' + row.{$unique_id} + '\',\'{:url('state')}\')"></i>';
                                        } else {
                                            return '<i class="fa fa-toggle-on text-info fa-2x cursor_pointer" onclick="$.operate.state(\'' + row.{$unique_id} + '\',\'{:url('state')}\')"></i>';
                                        }
                                    }
                                {else}
                                formatter: function(value, row, index) {
                                    if (value == 0) {
                                        return '<span class="badge badge-{$column.param.0.class|default='danger'}">{$column.param.0|default='禁用'}</span>';
                                    } else if (value == 1) {
                                        return '<span class="badge badge-{$column.param.1.class|default='primary'}">{$column.param.1|default='启用'}</span>';
                                    }else if (value == 2) {
                                        return '<span class="badge badge-{$column.param.1.class|default='default'}">{$column.param.2|default='状态2'}</span>';
                                    }else if (value == 3) {
                                        return '<span class="badge badge-{$column.param.1.class|default='success'}">{$column.param.3|default='状态3'}</span>';
                                    }else {
                                        {foreach $column.param as $key=>$vo }
                                            var kk = '{$key}';
                                            if(value == kk){
                                                return '<span class="badge badge-info">{$vo}</span>';
                                            }
                                        {/foreach}
                                    }
                                }
                                {/if}
                            {else}
                                {if $column.name == 'sort' }
                                    formatter: function(value, row, index) {
                                        return '<input class="form-control input-sm w_40 changeSort" type="text" value="' + value + '" data-id="' + row.{$unique_id} + '" onblur="$.table.sort(this)">';
                                    }
                                {else}
                                    {// 根据格式决定如何处理数据}
                                    {switch column.type }
                                    {case text }
                                        formatter: function(value, row, index) {
                                            return HTMLDecode(value);
                                        }
                                    {/case}
                                    {case datetime }
                                    formatter: function(value, row, index) {
                                        return changeDateFormat(value);
                                    }
                                    {/case}
                                    {case status }
                                        formatter: function(value, row, index) {
                                            if (value == 0) {
                                                return '<span class="badge badge-{$column.param.0.class|default='danger'}">{$column.param.0.title|default='禁用'}</span>';
                                            } else if (value == 1) {
                                                return '<span class="badge badge-{$column.param.1.class|default='primary'}">{$column.param.1.title|default='启用'}</span>';
                                            }else if (value == 2) {
                                                return '<span class="badge badge-{$column.param.1.class|default='default'}">{$column.param.1.title|default='状态2'}</span>';
                                            }else if (value == 3) {
                                                return '<span class="badge badge-{$column.param.1.class|default='success'}">{$column.param.1.title|default='状态3'}</span>';
                                            }else {
                                                return '<span class="badge badge-{$column.param.1.class|default='info'}">{$column.param.1.title|default='其他'}</span>';
                                            }
                                        }
                                    {/case}
                                    {case yesno }
                                        formatter: function(value, row, index) {
                                            if (value == 0) {
                                                return '<i class="fa fa-ban text-{$column.param.0.class|default='danger'}"></i>';
                                            } else if (value == 1) {
                                                return '<i class="fa fa-check text-{$column.param.1.class|default='primary'}"></i>';
                                            }
                                        }
                                    {/case}
                                    {case link }
                                    formatter: function(value, row, index) {
                                        var link = '{$column.default|default=''}';
                                        var reg = /__(.*?)__/g;
                                        // 匹配ID和email，可能为任何的其他参数，但都是 __字段__ 格式
                                        while (result = reg.exec(link)) {
                                            link = link.replace(result[0], row[result[1]]);
                                        }
                                        // 拼接
                                        link = '<a href="'+link+'" target="{$column.param}">' + value + '</a>';
                                        return link;
                                    }
                                    {/case}
                                    {case image }
                                    formatter: function(value, row, index) {
                                        if ($.common.isNotEmpty(value)) {
                                            return '<a href="' + value + '" target="_blank"><img class="image_preview" src="' + value + '"></a>';
                                        }
                                    }
                                    {/case}
                                    {case color }
                                    formatter: function(value, row, index) {
                                        if ($.common.isNotEmpty(value)) {
                                            return '<i class="table_colorpicker" style="background: ' + value + '""></i>';
                                        }
                                    }
                                    {/case}
                                    {case select }
                                    formatter: function(value, row, index) {
                                        return row.{$column.name|default=''};
                                    }
                                    {/case}
                                    {case select2 }
                                    formatter: function(value, row, index) {
                                        return row.{$column.name|default=''};
                                    }
                                    {/case}
                                    {case btn }
                                    formatter: function(value, row, index) {
                                        var actions = [];
                                        {volist name="right_buttons" id="right_button"}
                                        if('{$right_button.type|default=''}' == 'edit' || '{$right_button.type|default=''}' == 'preview'){
                                            if('{$right_button.href|default=''}'){
                                                var url = '{$right_button.href|default=''}';
                                                var reg = /__(.*?)__/g;
                                                // 匹配ID和email，可能为任何的其他参数，但都是 __字段__ 格式
                                               while (result = reg.exec(url)) {
                                                    url = url.replace(result[0], row[result[1]]);
                                                }
                                                actions.push('<a class="{$right_button.class|default=''}" target="{$right_button.target|default=''}" href="'+url+'"><i class="{$right_button.icon|default=''}"></i> {$right_button.title|default=''}</a> ');
                                            }else{
                                                actions.push('<a class="{$right_button.class|default=''}" href="javascript:void(0)" onclick="$.operate.edit(\'' + row.{$unique_id} + '\')"><i class="{$right_button.icon|default=""}"></i> {$right_button.title|default=''}</a> ');
                                            }
                                        } else if ('{$right_button.type|default=''}' == 'delete'){
                                            if('{$right_button.href|default=''}'){
                                                var url = '{$right_button.href|default=''}';
                                                var reg = /__(.*?)__/g;
                                                // 匹配ID和email，可能为任何的其他参数，但都是 __字段__ 格式
                                                while (result = reg.exec(url)) {
                                                    url = url.replace(result[0], row[result[1]]);
                                                }
                                                actions.push('<a class="{$right_button.class|default=''}" target="{$right_button.target|default=''}" href="'+url+'"><i class="{$right_button.icon|default=''}"></i> {$right_button.title|default=''}</a> ');
                                            }else{
                                                actions.push('<a class="{$right_button.class|default=''}" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.{$unique_id} + '\')"><i class="{$right_button.icon|default=""}"></i> {$right_button.title|default=''}</a> ');
                                            }
                                        } else {
                                            var url = '{$right_button.href|default=''}';
                                            var reg = /__(.*?)__/g;
                                            // 匹配ID和email，可能为任何的其他参数，但都是 __字段__ 格式
                                            while (result = reg.exec(url)) {
                                                url = url.replace(result[0], row[result[1]]);
                                            }
                                                actions.push('<a class="{$right_button.class|default=''}" href="javascript:void(0)" onclick="$.operate.import(\'' + url + '\')"><i class="{$right_button.icon|default=""}"></i> {$right_button.title|default=''}</a> ');
                                        }
        
                                        {/volist}
                                        
                                        return actions.join('');
                                    }
                                    {/case}
                                    {default /}
                                    {/switch}
                                {/if}
                            {/if}
                            
                        },
                    {/volist}
                ]
            };
            $.table.init(options);
        });

       
        
        //HTML反转义
        function HTMLDecode(text) { 
            var temp = document.createElement("div"); 
            temp.innerHTML = text; 
            var output = temp.innerText || temp.textContent; 
            temp = null; 
            return output; 
        } 
    </script>

    <!--bootstrap table end-->

    <!--底部提示-->
        
        
    </section>
<!--内容结束-->

</body>
</html>